@import 'open-props/postcss/style';
@import 'open-props/postcss/normalize';
* {
  box-sizing: border-box;
}
:root {
  body {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    height: 100vh;
    width: 100vw;
    padding: 10px;
  }
}

#app {
  width: min(calc(100vw - 20px), 100%);
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  grid-template-rows: masonry;

  div {
    margin-bottom: 20px;
    position: relative;
    &:nth-child(1) {
      grid-column: 2 / span 2;
    }
    small {
      display: grid;
      place-items: center;
      position: absolute;
      font-size: var(--font-size-3);
      border-radius: 50%;
      background: #333;
      width: 30px;
      height: 30px;
      color: white;
    }
    img {
      width: 100%;
      border-radius: var(--radius-2);
      display: block;
      margin-bottom: 0.5rem;
    }
    span {
      display: block;
      text-overflow: ellipsis;
      overflow: hidden;
      white-space: nowrap;
      font-size: var(--font-size-0);
    }
  }
}
